Storage unit, installation method thereof and installation program therefore

ABSTRACT

A new storage unit is installed such that installation costs are suppressed and functions of the new storage unit can be utilized sufficiently. An access right is changed such that the new storage unit (second storage unit) can access an existing first storage unit (S 502 ). A logical device relating to a storage device of the first storage unit is assigned to a logical device of the second storage unit (S 503 ). Path definition and device recognition in a host computer are performed such that the host computer can access the assigned logical device of the second storage unit (S 504, 505 ). Input-output setting of the host computer is changed such that processing of an input-output from the host computer to the device of the first storage unit is requested to the second storage unit (S 506 ).

The present application is a continuation of application Ser. No.10/636,758, filed Aug. 8, 2003, the contents of which are incorporatedherein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a storage unit that is installed newlyinto a computer system comprising a first storage unit and a hostcomputer accessing the first storage unit, and an installation methodthereof and an installation program therefor.

2. Related Art Statement

Recently, an amount of data treated by a computer is increasing byleaps, and accordingly storage capacity of a storage unit for storingdata is increasing. As a result, costs of storage management in systemmanagement increase, and reduction of management costs becomes animportant problem from the viewpoint of system operation.

When a new storage unit is installed into an existing computer systemthat comprises a host computer and a storage unit, two modes can beconsidered as a mode of installation, namely, a mode in which the oldstorage unit is used as ever, and the new storage unit is used togetherwith the old storage unit, and a mode in which all the data on the oldstorage unit are migrated onto the new storage unit.

For example, as to the latter mode of installation, Japanese PatentPublication No. 10-508967 discloses a technique of migrating data of anold storage unit onto a new storage unit. According to the techniquedisclosed in the above document, data of a first device in the oldstorage unit are migrated onto a second device assigned to the newstorage unit. Then, a host computer's access destination is changed fromthe existing first device to the new second device. An input-outputrequest from the host computer to the existing first device is receivedby the new storage unit. With respect to a read request, a part whosemigration is finished is read from the new second device, while a partthat has not been migrated yet is read from the existing first device.Further, with respect to a write request, dual writing is performedtoward both the first and second devices.

As described above, when a new storage unit is installed, it is possibleto migrate data of a first device within an old storage unit to a seconddevice within a new storage unit, without stopping input/output from/toa host computer.

However, in the case of the former mode of installation, where the newstorage unit and the old storage unit are used side by side, there is aproblem that, although generally the new storage unit has high function,high performance and high reliability in comparison with the old storageunit, it is impossible for data stored in the old storage unit to enjoythe merits of the new storage unit.

Further, in the case of the latter mode of installation, where all thedata of the old storage unit are migrated onto the new storage unit, itis possible to enjoy the merits of the new storage unit by migrating thedata stored in the old storage unit. However, there is a problem that,to migrate all the data of the old storage unit onto the new storageunit, the new storage unit must have more storage capacity than the oldstorage unit, and thus, the system installation cost is raised up.

Thus, as a compromise between them, it is possible to consider thefollowing operation. Namely, the number of disk units mounted on a newstorage unit is restrained to decrease initial investment, and theminimum data are migrated from an old storage unit to start systemoperation. At a stage in which a disk unit is added to the new storageunit, data is migrated from the old storage unit by an amount that theadded disk unit allows. However, even by this compromise, data that cannot be migrated because of storage capacity can not enjoy the merits ofthe new storage unit, similarly to the case where two storage units areused side by side.

SUMMARY OF THE INVENTION

An object of the present invention is to provide such a storage unit, aninstallation method thereof and an installation program therefor thatcan enjoy merits such as high function, high performance and highreliability of a new storage unit at the time of installation of the newstorage unit, suppressing cost increase.

To attain the above object, the present invention follows thebelow-described procedures to install a new storage unit (referred to asa second storage unit) into a computer system comprising a host computerand an existing first storage unit, wherein the host computer and thefirst storage unit are connected through a first network such as SAN,LAN, or the like.

First, the new second storage unit is connected to the first network.Then, zoning setting of a switch existing in the first network andaccess right setting of the first storage unit are changed such that thesecond storage unit can access a storage device in the first storageunit. Next, a logical device (hereinafter, referred to as a firstlogical device) relating to the storage device of the first storage unitis assigned to a logical device (hereinafter, referred to as a secondlogical device) of the second storage unit. Namely; the first logicaldevice of the first storage unit is associated with the second logicaldevice of the second storage unit. Next, with respect to the secondlogical device, path definition and device recognition in the hostcomputer are performed such that the host computer can recognize thesecond logical device of the second storage unit and can access thesecond logical device of the second storage unit.

Next, input-output setting of the host computer is changed such thatprocessing of an input-output from the host computer to the storagedevice of the first storage unit is requested to the second storageunit. Here, the substance of the second logical device is the storagedevice in the first storage unit, and a storage device storing the dataof the second logical device is not held in the second storage unit.

Favorably, the zoning setting of the switch existing in the firstnetwork and the access right setting of the first storage unit arechanged such that direct access from the host computer to the storagedevice of the first storage unit is inhibited.

In the above-described state, when the second storage unit receives aread request from the host computer to the second logical device, then,the second storage unit converts the read request into a read request tothe first logical device, and sends the converted request to the firststorage unit. Receiving an input-output processing completion reportfrom the first storage unit, the second storage unit sends the hostcomputer a completion report relating to the input-output request to thesecond logical device.

Thus, in the above-described state, the second storage unit can processan input-output request to the storage device in the first storage unit.Accordingly, merits of the new storage unit, such as high performance,high reliability and high function, can be applied to the device in theexisting first storage unit. For example, to the first logical device ofthe first storage unit, the second storage unit can apply a replicatingfunction such as data replication and copy to a remote place, or accessright control for each device.

Here, apparently the second logical device of the second storage unit isassigned to the first logical device of the first storage unit, and thehost computer recognizes the first logical device of the first storageunit as the second logical device of the second storage unit. In thisstate, a physical device that becomes the substance of the secondlogical device is allocated from an unused storage space in the secondstorage unit, and a part or all of the data of the storage devices ofthe first storage unit are migrated. In the course of data migration,when a read request from the host computer to the second logical devicerelates to data that have not been migrated from the first logicaldevice, then, this read request is sent to the first storage unit, as aread request to the first logical device. On the other hand, when thisread request relates to data that have been migrated already, this readrequest is processed in the second storage unit, as a read request tothe above-mentioned physical device as the subject of the second logicaldevice. Further, with respect to a write request in the course of datamigration, dual writing is performed toward the first logical device ofthe first storage unit and toward the physical device of the secondstorage unit. When the data migration from the first storage unit isfinished, then setting is changed such that the physical device of thesecond storage unit is seen as the second logical device.

Thereafter, each time when a new storage device is added to the secondstorage unit, data of the first storage unit are migrated stepwise.

When the second storage unit is installed according to theabove-described method, then, also with respect to data that areactually stored in the existing first storage unit, the host computeraccess the new second storage unit. Thus, merits of the new secondstorage unit, such as high performance, high functions, and highreliability of the second storage unit, can be enjoyed even when dataactually stored in the existing first storage unit are accessed. Inother words, the merits of the newly-installed storage unit can beapplied to all the data including the data in the existing first storageunit. In addition, the existing storage unit and the new storage unitare used jointly, and storage capacity of the new storage unit can besmaller, and installation costs can be the smallest.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing a computer system as an embodiment ofthe present invention;

FIG. 2 is a diagram showing an example configuration of a logical devicemanagement information table in an embodiment of the present invention;

FIG. 3 is a diagram showing an example configuration of a RAIDmanagement information table in an embodiment of the present invention;

FIG. 4 is a diagram showing an example configuration of an externaldevice management information table in an embodiment of the presentinvention;

FIG. 5 is a flowchart showing a procedure of installing a new storageunit in an embodiment of the present invention;

FIG. 6 is a flowchart showing a migration procedure at the time ofmigrating data from an existing first storage unit to a new secondstorage unit in an embodiment of the present invention;

FIG. 7 is a flowchart showing a procedure of processing an input-outputrequest from a host to a new second storage unit in an embodiment of thepresent invention;

FIG. 8 is a flowchart showing a processing procedure at the time ofadding a disk unit to a new second storage unit in an embodiment of thepresent invention; and

FIG. 9 is a diagram showing an example configuration of a logical deviceaccess statistical information table in an embodiment of the presentinvention.

BEST MODE OF PRACTICING THE INVENTION

Now, one embodiment of a computer system according to the presentinvention will be described.

As shown in FIG. 1, a computer system of the present invention comprisesa host computer 11, a fibre channel switch 18; two storage units 12 aand 12 b (referred to as a storage unit 12, by a general term) and amanagement server 13. The host computer 11 is connected with the twostorage units 12 a and 12 b through the fibre channel switch 18 andcables. Further, the host computer 11, the two storage units 12 a and 12b and the fibre channel switch 18 are connected to the management server13 through an IP network 142.

The host computer 11 comprises a CPU, a memory, and the like, andperforms predetermined functions when the CPU reads and executes anoperating system (hereinafter, referred to as OS) and applicationprograms stored in the memory.

Among the two storage units 12 a and 12 b, a first storage unit 12 b isan existing storage unit, and a second storage unit 12 a is a newlyinstalled storage unit. The first storage unit 12 b comprises a diskunit 121, a disk controller 122, a port 123 for connecting with the hostcomputer 11, and a network interface 125 for connecting with the IPnetwork 142. Here, the first storage unit 12 b may comprise a pluralityof disk units and a plurality of ports. Further, the second storage unit12 a comprises a plurality of disk units 121, a disk controller 122, aport 123 a for connecting with the host computer 11 and a plurality ofports 123 b for connecting with the other storage units (referred to asa port 123, by a general term), and a network interface 125 forconnecting with the IP network 142.

In a storage unit 12 of the present embodiment, a disk unit or units 121as hardware are defined collectively as one or a plurality of physicaldevices, and one logical device (i.e., one device from a logicalviewpoint) is assigned to one physical device. Of course, it is possibleto present an individual disk unit 121 as one physical device and onelogical device, to the host computer 11.

As a port 123 of a storage unit 12 in the present embodiment, it isassumed to use the fibre channel interface whose upper protocol is SCSI(Small Computer System Interface). However, another network interfacefor storage connection, such as IP network interface whose upperprotocol is SCSI, may be used.

A disk controller 122 of a storage unit 12 comprises a processor, acache memory 124 and a control memory, and communicate with themanagement server 13 through the network interface 125 and controls thedisk unit 121. The processor controls access from the host computer 11and controls the disk unit 121, based on various kinds of informationstored in the control memory. In particular, in the case where aplurality of disk units 121 (not a single disk unit 121) such as ones ina disk array are presented as one or plurality of logical devices to thehost computer 11, the processor performs processing and managementrelating to the disk units 121.

The control memory stores programs executed by the processor and variouskinds of management information. As one of the programs executed by theprocessor, there may be a disk controller program. This disk controllerprogram includes an installation program for installing the secondstorage unit 12 a into a computer system. This installation program andthe disk controller program including it are executed by the processorto function as a storage installation controller 129 and the diskcontroller, respectively. Further, as the various kinds of managementinformation stored or to be stored in the control memory, there may belogical device management information 126 for management of the logicaldevices of the second storage unit 12 a; RAID (Redundant Array ofIndependent Disk) management information 127 for management of physicaldevices consisting of the plurality of disk units 121 of the secondstorage unit 12 a, and external device management information 128 formanagement of correspondence between the logical devices of the secondstorage unit 12 a and the logical devices of the first storage unit 12b.

To enhance speed of processing an access from the host computer 11, thecache memory 124 stores data that are frequently read, or temporallystores write data from the host computer 11.

The host computer 11 is connected with the fibre channel switch 18through an interface (I/F) 112, and also with the management serverthrough a network interface 113. On the host computer 11, software(program) called a device link manager (hereinafter, referred to as DLM)111 operates. The DLM 111 manages correspondence between the logicaldevices (recognized through the interface 112) of the storage unit 12and device files as device management units of the OS. Usually, when alogical device is connected with a plurality of interfaces 112 and aplurality of ports 123, the host computer 11 recognizes that logicaldevice as a plurality of devices having different addresses, anddifferent device files are defined, respectively. A plurality of devicefiles corresponding to one logical device are managed as a group by theDLM 11, and a virtual device file as a representative of the group isprovided to upper levels, so that alternate paths and load distributioncan be realized. Further, in the present embodiment, the DLM 111 alsoadds/deletes a new device file to/from a specific device file group andchanges a main path within a device file group, according to aninstruction from a storage manager 131 located in the management server13.

The management server 13 performs operation, maintenance and managementof the whole computer system. The management server 13 comprises anetwork interface 133, and connects with the host computer 11, the twostorage units 12 a and 12 b, and the fibre channel switch 18, throughthe IP network 142. The management server 13 collects configurationinformation, resource utilization factors, performance monitoringinformation from various units 11, 12 and 18, presents them to a storageadministrator, and sends operation/maintenance instructions to thoseunits. The mentioned processing is performed by the storage manager 131operating on the management server 13.

Similarly to the disk controller 122, also the storage manager 131comprises a processor and a memory. The memory stores a storage managerprogram executed by the processor. This storage manager program includesan installation program for installing a new storage unit. Thisinstallation program and the storage manager program including it areexecuted by the processor to function as an installation controller 134and the storage manager 131, respectively. When a new storage unit isinstalled, this installation program is installed onto the existingmanagement server 13, except the case where a new management serverincorporated with the installation program is employed.

The fibre channel switch 18 comprises a plurality of ports 181. Eachport 181 is connected with the interface 112 of the host computer 11 ora port 123 of the storage unit 12 a or 12 b, so that each of thosedevices can communicate with another device. The fibre channel switch 18comprises a network interface 182, and is connected with the IP network142 also. Due to this arrangement, from the physical viewpoint, any hostcomputer 11 can access all the storage units 12 a and 12 b connected tothe fibre channel switch 18. Further, the fibre channel switch 18 has afunction called zoning, i.e., a function of limiting communication froma specific port to another specific port. This function is used, forexample, when access to a specific port 123 of a specific storage 12 islimited to a specific host 11. As a method of controlling combinationsof a sending port and a receiving port, may be mentioned a method inwhich an identifier assigned to a port 181 of the fibre channel switchis used, and a method in which WWN (World Wide Name) held by theinterface 112 of each host computer 11 and a port 123 of a storage unit12, for example.

Next, there will be described the logical device management information126, the RAID management information 127 and the external devicemanagement information 128 stored or to be stored in the control memoryof the disk controller 122 of the second storage unit 12 a.

FIG. 2 is a diagram showing an example configuration of a logical devicemanagement information 126 for management of the logical devices withinthe second storage unit 12 a.

Each record of the logical device management information 126 includes alogical device number 21, a size 22, a corresponding physical/externaldevice number 23, a device state 24, a port ID /target ID/LUN (LogicalUnit number) 25, a connected host name 26, a migrating physical/externaldevice number 27, a data migration progress pointer 28, and a datamigration processing flag 29.

The size 22 stores capacity of the logical device, i.e., the logicaldevice specified by the logical device number 21. The correspondingphysical/external device number 23 stores a physical device number ofthe physical device corresponding to the logical device, in the secondstorage unit 12 a, or stores an external device number, i.e., a logicaldevice of the first storage unit 12 b corresponding to the logicaldevice. In the case where the corresponding physical/external devicenumber 23 is not assigned with a device number, an invalid value is setin that entry. This device number becomes an entry number in the RAIDmanagement information 127 or the external device management information128. The device state 24 is set with information indicating a state ofthe logical device. The device state can be “online”, “offline”,“non-installed”, “fault offline” or “data migration in progress”. Thestate “online” means that the logical device is operating normally, andcan be accessed from an upper host. The state “offline” means that thelogical device is defined and is operating normally, but, can not beaccessed from an upper host. This state corresponds to a case where thedevice was used before by an upper host, but now is not used by theupper host since the device is not required. Here, the phrase “thelogical device is defined” means that correspondence with a physicaldevice or an external device is set, or, in detail, thephysical/external device number 23 is set. The state “non-installed”means that the logical device is not defined and can not be accessedfrom an upper host. The state “fault offline” means that a fault occursin the logical device and an upper host can not access that logicaldevice. Further, the state “data migration in progress” means that datamigration from or to an external device is in course of processing.

For the sake of simplicity, it is assumed in the present embodimentthat, at the time of shipping of the product, available logical deviceswere assigned in advance to physical devices prepared on a disk unit121. Accordingly, an initial value of the device state 24 is “offline”with respect to the available logical devices, and “non-installed” withrespect to the other.

The port number of the entry 25 is set with information indicating whichport the logical device is connected with, among the plurality of ports123. As the port number, a number uniquely assigned to each port 123within the storage unit 12 is used. Further, the target ID and LUN areidentifiers for identifying the logical device. Here, when the hostcomputer 11 accesses the device on SCSI, the target ID and LUN are usedas a SCSI-ID and LUN, respectively. The connected host name 26 isinformation used only by the storage units 12 a and 12 b connected tothe fibre channel switch 18, and shows a host name for identifying ahost computer 11 that is permitted to access the logical device. As thehost name, it is sufficient to use a name that can uniquely identify ahost computer 11 or its interface 112, such as a WWN (World Wide Name)given to the interface 112 of a host computer 11. In addition, thecontrol memory of the storage 12 a or 12 b holds management informationon an attribute of a WWN and the like of each port 123.

When the device state 24 is “data migration in progress”, the migratingphysical/external device number 27 holds a physical/external devicenumber of a migration destination of the physical/external device towhich the logical device is assigned. The data migration progresspointer 28 is information indicating the first address of a migrationsource area for which migration processing is unfinished, and is updatedas the data migration progresses. The data migration processing flag 29has an initial value “Off”. When the flag 29 is set to “On”, itindicates that the physical/external device to which the logical deviceis assigned is under data migration processing. Only in the case wherethe data migration processing flag is “On”, the migratingphysical/external device number 27 and the data migration progresspointer 28 become effective.

FIG. 3 is a diagram showing an example configuration of the RAIDmanagement information 127 for management of the physical devices withinthe storage unit 12 a.

Each record of the RAID management information 127 includes a physicaldevice number 31, a size 32, a corresponding logical device number 33, adevice state 34, a RAID configuration 35, a stripe size 36, a disknumber list 37, start offset in disk 38, and size in disk 39.

The size 32 stores capacity of the physical device, i.e., the physicaldevice specified by the physical device number 31. The correspondinglogical device number 33 stores a logical device number of the logicaldevice corresponding to the physical device, within the second storageunit 12 a. In the case where the physical device is not assigned with alogical device, this entry is set with an invalid value. The devicestate 34 is set with information indicating a state of the physicaldevice. The device state can be “online”, “offline”, “non-installed” or“fault offline”. The state “online” means that the physical device isoperating normally, and is assigned to a logical device. The state“offline” means that the physical device is defined and is operatingnormally, but is not assigned to a logical device. Here, the phrase “thephysical device is defined” means that correspondence with the disk unit121 is set, or, in detail, the below-mentioned disk number list 37 andthe start offset in disk 38 are set. The state “non-installed” meansthat the physical device is not defined on the disk unit 121. The state“fault offline” means that a fault occurs in the physical device, andthe physical device can not be assigned to a logical device.

For the sake of simplicity, it is assume in the present embodiment thatphysical devices were prepared in advance on the disk unit 121 at thetime of shipping of the product. Accordingly, an initial value of thedevice state 34 is “offline” with respect to the available physicaldevices, and “non-installed” with respect to the other.

The RAID configuration 35 holds information on a RAID configuration,such as a RAID level and the numbers of data disks and parity disks, ofthe disk unit 121 to which the physical device is assigned. Similarly,the stripe size 36 holds data partition unit (stripe) length in theRAID. The disk number list 37 holds a number or numbers of one orplurality of disk units 121 constituting the RAID to which the physicaldevice is assigned. These numbers are unique values given to disk units121 for identifying those disk units 121 within the storage unit 12. Thestart offset in disk 38 and the size in disk 39 are informationindicating an area to which data of the physical device are assigned ineach disk unit 121. In the present embodiment, for the sake ofsimplicity, the respective offsets and sizes in the disk units 121constituting the RAID are unified.

Each entry of the above-described RAID management information 127 is setwith a value, at the time of shipping the second storage unit 12 a.

FIG. 4 is a diagram showing an example configuration of the externaldevice management information 128 of the second storage unit 12 a thatmanages the logical devices of the first storage unit 12 b as anexternal device.

Each record of the external device management information includes anexternal device number 41, a size 42, a corresponding logical devicenumber 43, a device state 44, a storage identification information 45, adevice number in storage 46, an initiator port number list 47, and atarget port ID/target ID/LUN list 48.

The external device number 41 holds a value assigned to a logical deviceof the first storage unit 12 b, and this value is unique in the secondstorage unit 12 a. The size 42 stores capacity of the external device,i.e., the external device specified by the external device number 41.When the external device corresponds to a logical device in the secondstorage unit 12 a, the corresponding logical device number 43 stores alogical device number of that logical device. When the external deviceis not assigned to a logical device, this entry is set with an invalidvalue. The device state 44 is set with information indicating a state ofthe external device. The device state 44 is “online”, “offline”,“non-installed” or “fault offline”. The meaning of each state is same asthe device state 34 in the RAID management information. In the initialstate of the second storage unit 12 a, another storage unit is notconnected, and the initial value of the device state 44 is“non-installed”.

The storage identification information 45 holds identificationinformation of the first storage unit 12 b that carries the externaldevice. As the storage identification information, may be considered,for example, a combination of vendor identification information on avendor of the storage unit 12 b and a manufacturer's serial numberassigned uniquely by the vendor. The device number in storage 46 holds alogical device number (in the first storage unit 12 b) corresponding tothe external device. The initiator port number list 47 holds a list ofport numbers of ports 123 b (of the second storage unit 12 a) that canaccess the external device. When, with respect to the external device,LUN is defined for one or more ports 123 of the first storage unit 12 b,the target port ID/target ID/LUN list 48 holds port IDs of those portsand one or plurality of target IDs/LUNs assigned to the external device.

Next, operation of the storage administrator and the computer systemfollowing installation of the second storage unit 12 a in the presentembodiment will be described according to the flowchart shown in FIG. 5.

First, the storage administrator connects the second storage unit 12 ato the fibre channel switch 18 (Step 501). In the present embodiment,the port 123 a is connected to a port 181 of the fibre channel switch18, for access from the host computer 11. And, the port 123 b isconnected to a port 181 of the fibre channel switch 18, for access toother storage units including the first storage unit 12 b. When thesecond storage unit 12 a is activated, the fibre channel switch 18detects the established links with the ports 123 a and 123 b of thesecond storage units 12 a. Thereafter, on occurrence of a login fromeach port 123 a or 123 b to the switch 18, a login to the interface orthe port of the host computer 11 or the second storage unit 12 a isexecuted according to the fibre channel standard. At that time, thesecond storage unit 12 a holds information such as the WWN or ID of thehost computer 11 or the like to which the port 123 a or 123 b has loggedin. Receiving a state change notification from the switch 18, theinstallation controller 134 of the storage manager 131 acquires networktopology information from the switch 18 again, to detect newregistration of the second storage unit 12 a.

Processing on and after the step 502 is performed mainly by theinstallation controller 134 of the storage manager 131 that receives aninstruction from the storage administrator to start installation of thesecond storage unit 12 a, and by the installation controller 129 of thesecond storage unit 12 a. In the step 502, the installation controller134 of the storage manager 131 changes zoning setting of the switch 18,and changes device access right setting of the first storage unit 12 bsuch that the second storage unit 12 a can access the devices of thefirst storage unit 12 b.

In the step 503, the storage manager 131 assigns the logical devices ofthe first storage unit 12 b to the logical device of the second storageunit 12 a. In detail, first, the storage manager 131 sends the secondstorage unit 12 a the port ID list of the first storage unit 12 b as theobject of migration to the second storage unit 12 a. From the port 123b, the installation controller 129 of the second storage unit 12 a sendsa SCSI “Inquiry” command that designates a specific LUN for a port 123(of the first storage unit 12 b) existing in the received list, withrespect to all such LUNs. On the other hand, the processor of the firststorage unit 12 b responds normally to “Inquiry” commands relating toLUNs that are actually set to the port IDs of the first storage unit 12b. Based on this response, the installation controller 129 of the secondstorage unit 12 a specifies the logical devices (of the first storageunit 12 b) that can be accessed and migrated to the second storage unit12 a. And, the installation controller 129 generates an external devicelist (from the viewpoint of the second storage unit 12 a) of thoselogical devices. To judge whether migration is possible or not, theinstallation controller 129 utilizes information such as names, typesand capacities of devices connected to the second storage unit 12 a. Theinformation such as the names, types and capacities of the devices isacquired from returned information of the response to theabove-mentioned “Inquiry” command and returned information of a responseto “Read Capacity” command that is sent after the “Inquiry” command.With respect to logical devices (of the first storage unit 12 b) whosemigration has been judged to be possible, the installation controller129 registers those logical devices as external devices of the secondstorage unit 12 a into the external device management information 128.In detail, the installation controller 129 finds an external devicewhose device state 44 is “non-installed”, and sets information 42˜48into the entries concerned of that external device. Now, the devicestate 44 is changed to “offline”.

The installation controller 129 of the second storage unit 12 a notifiesthe storage manager 131 of the above-mentioned external device list withrespect to the designated port. And, the installation controller 134 ofthe storage manager 131 instructs the second storage unit 12 a to assignthe logical devices of the first storage unit 12 b. Receiving thisinstruction, the installation controller 129 of the second storage unit12 a assigns an external device a, i.e., a logical device of the firststorage unit 12 b, to a non-installed logical device a of the secondstorage unit 12 a. In detail, the installation controller 129 of thesecond storage unit 12 a sets the device number 41 of the externaldevice a to which the logical device of the first storage unit 12 bcorresponds, into the corresponding physical/external device number 23of the logical device management information 126 relating to the logicaldevice a. Then, the installation controller 129 of the second storageunit 12 a changes the device state 24 of the logical device managementinformation 126 from “non-installed” to “offline”. In addition, thecorresponding logical device number 43 of the external device managementinformation 128 is set to the device number 21 of the logical device a,and the device state 44 is changed to “online”.

Successively, in the step 504, the installation controller 134 of thestorage manager 131 instructs the second storage unit 12 a to define aLUN to the port 123 a such that the host computer 11 can access thelogical device a assigned to the second storage unit 12 a. Receivingthis instruction, the installation controller 129 of the second storageunit 12 a defines a LUN relating to the above-assigned logical device a,i.e., defines a device path to the port 123 a of the second storage unit12 a. Then, the port number/target ID/LUN 25 and the host name 26 of thelogical device management information 126 are set.

When the logical device of the first storage unit 12 b is assigned asthe logical device of the second storage unit 12 a, and also the LUN isdefined, then, the installation controller 134 of the storage manager131 instructs the DLM 111 of the host computer 11 to recognize thedevices again. Receiving this instruction, the DLM 111 of the hostcomputer generates a device file relating to the newly-assigned logicaldevice. For example, in the case of the UNIX (a registered trademark)operating system of Hewlett-Packard Ltd., an “IOSCAN” command is used torecognize a new logical device and to generate a device file. When thelogical device of the storage unit 12 corresponding to thenewly-generated device file is same as one corresponding to apreviously-generated device file, then, the DLM 111 detect it andmanages these device file as a same group. To judge the sameness, it isconsidered to use the above-mentioned “Inquiry” command or the like toacquire the device number in the storage 12, for example. However, inthe case where a logical device b in the first storage unit 12 bcorresponds to a logical device a in the second storage unit 12 a, theDLM 111 sees these logical devices a and b as logical devices of thedifferent storage units 12 a and 12 b, they are not managed in a samegroup.

Next, the installation controller 134 of the storage manager 131instructs the DLM 111 of the host computer 11 to change the accessdestination. Receiving this instruction, the DLM 111 changes access tothe device in the first storage 12 b to access to the device in thesecond storage unit 12 a (Step 506). In detail, first, the installationcontroller 134 of the storage manager 131 sends device correspondenceinformation of the first storage unit 12 b and the second storage unit12 a to the DLM 111. The device correspondence information isinformation of the assignment of the logical devices of the secondstorage unit 12 b. The DLM 111 of the host computer 11 assigns a virtualdevice file that is assigned to a device file group relating to alogical device b in the first storage unit 12 b to a device file grouprelating to a logical device a in the second storage unit 12 a. As aresult, software operating on the host computer 11 can access thelogical device a in the second storage unit 12 a according to a sameprocedure of accessing the logical device b in the first storage unit 12b.

Next, in the step 507, the installation controller 134 of the storagemanager 131 makes the switch 18 change the zoning setting and makes thefirst storage unit 12 b change setting of the device access right, toinhibit the host computer 11 from directly accessing the devices of thefirst storage unit 12 b.

Next, referring to the flowchart shown in FIG. 6, there will bedescribed processing of migrating data stored in the devices in thefirst storage unit 12 b to an empty device in the second storage unit 12a, after installation of the second storage unit 12 a into the computersystem.

First, the installation controller 134 of the storage manager 131instructs the second storage unit 12 a to migrate data. In the step 601,the installation controller 129 of the second storage unit 12 a checksthe device state 34 of the RAID management information 127, to searchfor a physical device a in the “offline” state, i.e., in an empty state.When a physical device in the “offline” state is found, then, the size32 is referred to in order to obtain the capacity of the empty device.Next, in the step 602, the installation controller 129 searches for suchan external device (hereinafter, referred to as the migration objectdevice) that the device state 44 of the external device managementinformation 128 is “online” and the size 42 of the external devicemanagement information 128 can be accommodated by the capacity of thephysical device a.

When the empty physical device a as the migration destination and themigration object device are determined, then, in the step 603, theinstallation controller 129 assigns an empty physical device to thelogical device a of the second storage unit 12 a (Step 603). In detail,the installation controller 129 registers the number of the logicaldevice a into the corresponding logical device number 33 of the RAIDmanagement information 127 corresponding to the physical device a, andchanges the device state 34 from “offline” to “online”. Further, afterinitializing the data migration progress pointer 28 of the logicaldevice management information 126 corresponding to the logical device a,the device state 24 is set to “data migration in progress”, the datamigration processing flag 29 is set to “On”, and the migratingphysical/external device number 27 is set to the device number of thephysical device a.

When the device assignment is finished, then, in the step 604, theinstallation controller 129 of the second storage unit 12 a performsprocessing of data migration from the migration object device to thephysical device a. In detail, from the top of the migration objectdevice, data are read to the cache memory 124, and then, the data arewritten onto the physical device a. This operation is repeated to theend of the migration object device. In the course of this operation,each time when writing onto the physical device a is finished, the firstaddress of the next migration object area is set into the data migrationprogress pointer 28.

When migration of all the data is finished, then, in the step 605, theinstallation controller 129 sets the corresponding physical/externaldevice number 23 of the logical device management information 126 withthe physical device number of the physical device a, and the devicestate 24 is changed from “data migration in progress” to “online”, thedata migration flag 29 is set to “Off”, and the migratingphysical/external device number 27 is set to the invalid value. Further,the corresponding logical device number 43 of the external devicemanagement information 128 corresponding to the migration object deviceis set to the invalid value, and the device state 44 is set to“offline”.

Next, referring to the flowchart shown in FIG. 7, there will bedescribed operation of the second storage unit 12 a in response to aninput-output request from the host computer 11.

When the installation controller 129 of the second storage unit 12 areceives an input-output request from the host computer 11 (Step 701),the installation controller 129 judges whether the request is read orwrite (Step 702). In the case where the request is read, it is checkedwhether processing object data are held in the cache memory 124 (hit)(Step 703). When the processing object data are not held in the cachememory 124, data staging to the cache memory 124 is performed. At thattime, it is judged whether the data migration is in progress, based onthe device state 24 of the logical device in the logical devicemanagement information 126. When the data migration is in progress,then, it is judged whether a processing object address of the logicaldevice as the processing object is in a migrated data area, based on thedata migration progress pointer 28 relating to the logical device in thelogical device management information 126 (Step 704). In the case wherethe data migration is in progress and data of the processing object areahas been migrated already, then, read processing is performed forreading from the migration destination device indicated by the migratingphysical/external device number 27 (Step 706). In the other case, readprocessing is performed for reading from the migration object deviceindicated by the corresponding physical/external device number 23 (Step705).

In the read processing in the step 705, the installation controller 129converts the read request from the host computer 11 into a read requestto the migration object device indicated by the correspondingphysical/external device number 23, and sends the converted request tothe first storage unit 12 b. Receiving this read request, the firststorage unit 12 b performs read processing toward the disk unit 121corresponding to the above-mentioned migration object device, and sendsread contents to the second storage unit 12 a. Further, in the readprocessing in the step 706, the read processing is performed toward themigration object device indicated by the migrating physical/externaldevice number 27.

When, after execution of the read processing (Step 705 or 706), the datastaging to the cache memory 124 is finished, then, the object data heldin the cache memory 124 is transferred to the host computer 11 (Step707). And, the disk controller 122 of the second storage unit 12 a sendsa completion report to the host computer 11 (Step 708).

When it is judged in the step 703 that cache hit occurs, then, theobject data held in the cache memory 124 are immediately transferred tothe host computer 11 (Step 707).

When the data transfer to the host computer 11 is finished, the diskcontroller 122 of the second storage unit 12 a sends a processingcompletion report to the host computer 11 (Step 708).

When it is judged in the step 702 that the input-output request from thehost computer 11 is write, then, the disk controller 122 of the secondstorage unit 12 a assigns a write data storage area to the cache memory124, transfers write data from the host computer 11 to the cache memory124, and sends a completion report to the host computer 11 (Steps709-711). Thereafter, destaging of the write data is performed.

In the course of the destaging, it is judged whether the logical deviceis under data migration, based on the device state 24 of the logicaldevice management information 126 (Step 712). When the logical device isunder data migration, then, write processing of the above-mentioned datais performed toward both the migration source (migration object) deviceand the migration destination device (Step 713). On the other hand, whenthe logical device is not under data migration, write processing of theabove-mentioned data is performed toward the device indicated by thecorresponding physical/external device number 23 (Step 714).

Next, referring to the flowchart shown in FIG. 8, there will bedescribed data migration processing in the case where a disk unit 121 isadded to the second storage unit 12 a.

First, when the storage administrator adds a disk unit 121 to the secondstorage unit 12 a, and the installation controller 129 of the secondstorage unit 12 a detects this addition (Step 801), then, theinstallation controller 129 defines a new empty device, i.e., a physicaldevice of an “offline” state (Step 802). At that time, the entries 32-39of the RAID management information 127 are updated.

Thereafter, data migration of an external device whose data are notmigrated yet is performed toward the newly-assigned empty device (Steps803-806). These processes (Steps 803-806) are similar to the steps602-605 of FIG. 6, and not described here again.

Hereinabove, an embodiment of the present invention has been described.However, the present invention is not limited to the above-describedembodiment, and can be modified variously within the scope of thepresent invention.

For example, in the processing of installing the second storage unit 12a to the computer system, which has been described referring to FIG. 5,the port ID list of the first storage unit 12 b as the migration objectis sent from the storage manager 131 to the second storage unit 12 a, inthe step 503. However, instead of the port ID list, information that canspecify the first storage unit 12 b (for example, identificationinformation list for identifying the unit name obtainable by an“Inquiry” command) may be sent. Identification information of thementioned list is information required by the storage manager 131 tomanage the first storage unit 12 b, and although basically held insidethe storage manager 131, may be obtained by sending an “Inquiry” commandto the first storage unit 12 b at the time of sending the list. In thatcase, the second storage unit 12 a sends an “Inquiry” command to all thestorage node ports that can be reached from the port 123 b, and comparesthe above-mentioned identification information list with unitidentification information among information obtained from the firststorage unit 12 b, so that only coincident ports become migrationobjects. Further, it is possible that the second storage unit 12 a doesnot receive an instruction from the storage manager 131 and all thestorage node ports reachable from the port 123 b become migrationobjects.

Further, in the step 503 during installation processing of the secondstorage unit 12 a, the storage manager 131 is notified of the list ofthe external devices detected by the second storage unit 12 a, and onlythe external devices designated by the storage manager become themigration objects. However, it is possible that the second storage unit12 a does not notify the storage manager 131 of the detected externaldevice list, and all the devices shown in the external device listbecome migration objects.

Further, in the step 503, the second storage unit 12 a selects andassigns the non-installed logical device to the external devicedesignated by the storage manager 131. However, the storage manager 131may determine a non-installed logical device as an object of assignmentand indicate the determined logical device to the second storage unit 12a. In that case, the storage manager 131 must obtain information such asthe logical device number 21 and the device state 24 out of the logicaldevice management information 126 shown in FIG. 2, to determinemigration objects based on the obtained information.

Further, as described referring to the flowchart of FIG. 6, in the step601 during the migration processing from an external device, i.e., alogical device of the first storage unit 12 b, which is assigned to alogical device of the second storage unit 12 a, to an empty physicaldevice of the second storage unit 12 a, the second storage unit 12 aperforms data migration from the external device to all the emptyphysical devices as the migration destination. However, it is possibleto limit migration destination physical devices, based on controlinformation that can be used to judge whether a physical device can be amigration object. In detail, a data migration target availability flagis provided to each record of the RAID management information shown inFIG. 3. This flag is set with a flag value indicating whether eachphysical device can become a data migration destination at the time ofinitialization or addition of a physical device. Based on thisinformation, the second storage unit 12 a specifies a physical devicethat can be a migration destination. Here, the mentioned flag value isset by the storage administrator using a configuration managementterminal (not shown in FIG. 1) of the second storage unit 12 a, or usingan input-output unit such as a keyboard and/or a mouse provided to thestorage manager 131. For example, it is possible to employ anarrangement in which a flag value is automatically set to “unavailableas migration target” as a basic set value given at the time ofinstallation of a physical device, and the storage administrator changesthe flag value relating to a specific physical device to “available asmigration target”. Or, it is possible to employ an arrangement in which,as the basic set value, the value “available as migration target” is setautomatically, and the storage administrator changes the flag valuerelating to a specific physical device to “unavailable as migrationtarget”.

Further, it is possible that, with respect to a data migrationinstruction of the storage manager 131, the storage manager 131 holdsphysical device information such as the physical device number 31, thesize 32 and the device state 34 out of the RAID management information127 shown in FIG. 3, and specifies an empty physical device as the datamigration destination, to the second storage unit 12 a. In that case, inthe data migration processing (shown in FIG. 6) of the second storageunit 12 a, it is necessary to add a step in which it is checked whetherthe specified physical device is empty and the data migration request isrejected when the specified physical device is not empty.

Further, in the processing of the step 602 shown in FIG. 6, when thesecond storage unit 12 a determines the migration object externaldevice, the external device is determined by checking only whether itcan be accommodated by the size of the empty physical device selected inthe step 601. However, the migration object may be determined based onother information of the external device. For example, it is possiblethat a data migration object possibility flag is provided to each recordof the external device management information 128 shown in FIG. 4, andit is judged whether the external device can be an object of migration.In that case, when the external device management information 128 on anexternal device is registered in the step 503, the above-mentioned flagis initialized to have a value indicating possibility or impossibilityof migration, and thereafter, the storage administrator changes the flagvalue. When the storage administrator changes the flag value, aconfiguration management terminal (not shown in FIG. 1) of the secondstorage unit 12 a, or an input-output unit such as a keyboard and/or amouse provided to the storage manager 131 may be used. Further, insteadof the above-mentioned data migration object possibility flag, datamigration object priority information may be provided. In that case, thesecond storage unit 12 a determines the migration object externaldevice, referring to the migration object priority information set bythe storage administrator.

Further, as a standard for determining a migration object externaldevice, host access statistical information to the external device maybe used, for example. In detail, the second storage unit 12 a acquiresaccess statistical information for each logical device. FIG. 9 shows anexample of the statistical information. In each record of the accessstatistical information, an access frequency 91 indicates the number ofaccesses per time unit to the logical device, and a read frequency 92indicates the number of reads per time unit from the logical device. Awrite frequency can be calculated from the access frequency 91 and theread frequency 92. A read cache hit rate 93 and a write cache hit rate94 are hit rates in the cache memory 124 of the second storage unit 12 aat the time of read access and at the time of write access,respectively. By combining these information items, it is possible tocalculate an access frequency of each logical device to thecorresponding external device (device of the first storage unit 12 b).Here, as a data migration object, it is possible to select such anexternal device that has a higher access frequency and can beaccommodated by the size of an empty device, based on thus-obtainedaccess frequency for each external device.

Further, in the data migration processing shown in FIG. 6, the storagemanager instructs the second storage unit 12 a to perform datamigration. However, the second storage unit 12 a may automaticallyperform the data migration processing, as an extension of the processingof associating an external device, i.e., a logical device of the firststorage unit 12 b, with a logical device of the second storage unit 12a. Namely, out of the various functions of the installation controller134 of the storage manager 131, the functions relating to the datamigration processing shown in FIG. 6 may be mounted on the secondstorage unit 12 a.

1. (canceled)
 2. A method in a system which includes a computer, a firststorage system coupled to the computer, and a virtualization devicecoupled to the computer and the first storage system which executes anInput/Output (I/O) operation in accordance with a first I/O requestreceived at the virtualization device for a logical volume in thevirtualization device, said method comprising: receiving, at thevirtualization device, configuration information of a first volume inthe first storage system from the first storage system; assigning thelogical volume in the virtualization device to the first volume in thefirst storage system by using the configuration information received atthe virtualization device; making an access path from the computer tothe first volume in the first storage system via the virtualizationdevice; correlating, if data stored in the first volume in the firststorage system are to be moved to another storage device, the logicalvolume in the virtualization device with a second volume in the anotherstorage device; and moving the data from the first volume in the firststorage system to the second volume in the another storage device.
 3. Amethod according to claim 2, further comprising: in making the accesspath, making a second access path from the virtualization device to thefirst storage system included in the access path so as to permit thevirtualization device to access the first volume in the first storagesystem via the second access path; and sending, from the virtualizationdevice, a second I/O request corresponding to the first I/O request sentfrom the computer to the first volume in the first storage system viathe second access path.
 4. A method according to claim 2, furthercomprising: executing the I/O operation by the first storage systemafter making the access path.
 5. A method in a system which includes acomputer, a first storage system coupled to the computer, and avirtualization device coupled to the computer and the first storagesystem, said method comprising: providing a plurality of logical devicesin the virtualization device, each of the logical devices being avirtualized volume; selecting a first logical device among the pluralityof logical devices; receiving, at the virtualization device,configuration information of a first volume in the first storage systemfrom the first storage system; setting the configuration information ofthe first volume in the first storage system to the first logical devicein the virtualization device; making an access path from the computer tothe first volume in the first storage system via the virtualizationdevice; executing an Input/Output (I/O) operation corresponding to afirst I/O request received at the virtualization device for the firstlogical device in the virtualization device; correlating, if data storedin the first volume in the first storage system are to be moved toanother storage device, the first logical device in the virtualizationdevice with a second volume in the another storage device; and movingthe data from the first volume in the first storage system to the secondvolume in the another storage device.
 6. A method in a system whichincludes a computer, a first storage system coupled to the computer, asecond storage system and a virtualization device coupled to thecomputer, the first storage system and the second storage system, saidmethod comprising: providing a plurality of logical device numbers inthe virtualization device, each of the logical device numbersrepresenting a virtualized volume in the virtualization device;selecting a first logical device number among the plurality of logicaldevice numbers; receiving, at the virtualization device, configurationinformation of a first volume in the first storage system from the firststorage system; setting a first logical device number in thevirtualization device to the configuration information received at thevirtualization device; making an access path from the computer to thefirst volume in the first storage system via the virtualization device;executing an Input/Output (I/O) operation corresponding to a first I/Orequest received at the virtualization device including the firstlogical device number; correlating, if data stored in the first volumein the first storage system are to be moved to the second storagesystem, the first logical device number in the virtualization devicewith a second volume in the second storage system; and moving the datafrom the first volume in the first storage system to the second volumein the second storage system.
 7. A method in a system which includes acomputer, a first storage system coupled to the computer, and avirtualization device coupled to the computer and a first storagesystem, the first storage system which executes an Input/Output (I/O)operation in accordance with a first I/O request received at thevirtualization device including a first logical device number in thevirtualization device, said method comprising: receiving, at thevirtualization device, configuration information of a first volume inthe first storage system from the first storage system; setting theconfiguration information of the first volume in the first storagesystem to the logical device number in the virtualization device; makingan access path from the computer to the first volume in the firststorage system via the virtualization device; correlating, if datastored in the first volume in the first storage system are to be movedto another storage device, the logical volume number in thevirtualization device with a second volume in the another storagedevice; and moving the data from the first volume in the first storagesystem to the second volume in the another storage device.
 8. A methodin a system which includes a computer, a first storage system coupled tothe computer, a second storage system, and a virtualization devicecoupled to the computer, the first storage system and the second storagesystem, the first storage system which executes an Input/Output (I/O)operation in accordance with a first I/O request received at thevirtualization device for a logical volume in the virtualization device,said method comprising: receiving, at the virtualization device,configuration information of a first volume in the first storage systemfrom the first storage system; assigning the logical volume in thevirtualization device to the first volume in the first storage system byusing the configuration information received at the virtualizationdevice; making an access path from the computer to the first volume inthe first storage system via the virtualization device; correlating, ifdata stored in the first volume in the first storage system are to bemoved to the second storage system, the logical volume in thevirtualization device with a second volume in the second storage system;and moving the data from the first volume in the first storage system tothe second volume in the second storage system.
 9. A method according toclaim 5, further comprising: in making the access path, making a secondaccess path from the virtualization device to the first storage systemso as to permit the virtualization device to access to the first volumein the first storage system via the second access path; and sending,from the virtualization device, a second I/O request corresponding tothe first I/O request sent from the computer to the first volume in thefirst storage system via the second access path.
 10. A method accordingto claim 6, further comprising: in making the access path, making asecond access path from the virtualization device to the first storagesystem so as to permit the virtualization device to access to the firstvolume in the first storage system via the second access path; andsending, from the virtualization device, a second I/O requestcorresponding to the first I/O request sent from the computer to thefirst volume in the first storage system via the second access path. 11.A method according to claim 7, further comprising: in making the accesspath, making a second access path from the virtualization device to thefirst storage system so as to permit the virtualization device to accessto the first volume in the first storage system via the second accesspath; and sending, from the virtualization device, a second I/O requestcorresponding to the first I/O request sent from the computer to thefirst volume in the first storage system via the second access path. 12.A method according to claim 8, further comprising: in making the accesspath, making a second access path from the virtualization device to thefirst storage system so as to permit the virtualization device to accessto the first volume in the first storage system via the second accesspath; and sending, from the virtualization device, a second I/O requestcorresponding to the first I/O request sent from the computer to thefirst volume in the first storage system via the second access path.